﻿Imports System
Imports System.Runtime.CompilerServices
Imports System.Runtime.InteropServices

Namespace Google.Desktop.Interop
    <ComImport, TypeLibType(CShort(&H10C0)), Guid("D5D277C7-BC90-437F-8151-E0645B6E6368")> _
    Public Interface IGoogleDesktopQuery2
        Inherits IGoogleDesktopQuery

        <MethodImpl(MethodImplOptions.InternalCall, MethodCodeType:=MethodCodeType.Runtime), DispId(&H414)> _
        Sub SetOption(<[In](), MarshalAs(UnmanagedType.BStr)> ByVal name As String, <[In](), MarshalAs(UnmanagedType.Struct)> ByVal value As Object)

        <MethodImpl(MethodImplOptions.InternalCall, MethodCodeType:=MethodCodeType.Runtime), DispId(&H415)> _
        Function GetOption(<[In](), MarshalAs(UnmanagedType.BStr)> ByVal name As String) As <MarshalAs(UnmanagedType.Struct)> Object

        <DispId(&H416)> _
        ReadOnly Property Query As <MarshalAs(UnmanagedType.BStr)> String
           
        <MethodImpl(MethodImplOptions.InternalCall, MethodCodeType:=MethodCodeType.Runtime), DispId(&H417)> _
        Function Execute() As <MarshalAs(UnmanagedType.Interface)> IGoogleDesktopQueryResultSet

        <MethodImpl(MethodImplOptions.InternalCall, MethodCodeType:=MethodCodeType.Runtime), DispId(&H428)> _
        Function PrepareResultSet() As <MarshalAs(UnmanagedType.Interface)> IGoogleDesktopQueryResultSet

    End Interface
End Namespace

